package org.devocean.groupbuying.service;

import java.util.List;

import org.devocean.groupbuying.domain.PaypalPayment;
import org.devocean.groupbuying.domain.Purchase;

public interface PaypalPaymentService {

	PaypalPayment getPaypalPaymentById(Integer id);

	List<PaypalPayment> getAllPaypalPayments();

	PaypalPayment addOrUpdatePaypalPayment(PaypalPayment paypalPayment);

	void removePaypalPayment(Integer id);

	long countPaypalPayments();

	PaypalPayment getPaypalPaymentByPurchaseItemId(Integer id);

	void addPurchasePayPalPayments(String payerID, String transactionID,
			String status, Purchase purchase);

	String setCheckout() throws Exception;

	Purchase doCheckOutPayment(Integer customerID, String payerID,
			String token, String action) throws Exception;

	void validPurchase(Integer customerID) throws Exception;

	void capturePayment(Integer PurchaseItemId) throws Exception;


	void verifyPayment(Integer PurchaseItemId) throws Exception;

}
